package com.ruoyi.purchase.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 入库对象 t_purchase_return
 * 
 * @author wonderland
 * @date 2023-07-18
 */
public class PurchaseReturn extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 订单id */
    private Long id;

    /** 供应商名 */
    @Excel(name = "供应商名")
    private String supplierName;

    /** 单据编号 */
    @Excel(name = "单据编号")
    private String receiptNumber;

    /** 商品信息 */
    @Excel(name = "商品信息")
    private String goodsInfo;

    /** 单据日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "单据日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date billDate;

    /** 操作员 */
    @Excel(name = "操作员")
    private String adminName;

    /** 金额合计 */
    @Excel(name = "金额合计")
    private BigDecimal totalAmount;

    /** 订单备注 */
    @Excel(name = "订单备注")
    private String note;

    /** 状态  0已结清 1已支付未结清 2已退货 */
    @Excel(name = "状态  0已结清 1已支付未结清 2已退货")
    private Long state;

    /** 收款金额 */
    @Excel(name = "收款金额")
    private BigDecimal payAmount;

    /** 退货金额 */
    @Excel(name = "退货金额")
    private BigDecimal returnAmount;

    /** 仓库id */
    @Excel(name = "仓库id")
    private Long storageId;

    /** 付款账号id */
    @Excel(name = "付款账号id")
    private Long accountId;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setSupplierName(String supplierName) 
    {
        this.supplierName = supplierName;
    }

    public String getSupplierName() 
    {
        return supplierName;
    }
    public void setReceiptNumber(String receiptNumber) 
    {
        this.receiptNumber = receiptNumber;
    }

    public String getReceiptNumber() 
    {
        return receiptNumber;
    }
    public void setGoodsInfo(String goodsInfo) 
    {
        this.goodsInfo = goodsInfo;
    }

    public String getGoodsInfo() 
    {
        return goodsInfo;
    }
    public void setBillDate(Date billDate) 
    {
        this.billDate = billDate;
    }

    public Date getBillDate() 
    {
        return billDate;
    }
    public void setAdminName(String adminName) 
    {
        this.adminName = adminName;
    }

    public String getAdminName() 
    {
        return adminName;
    }
    public void setTotalAmount(BigDecimal totalAmount) 
    {
        this.totalAmount = totalAmount;
    }

    public BigDecimal getTotalAmount() 
    {
        return totalAmount;
    }
    public void setNote(String note) 
    {
        this.note = note;
    }

    public String getNote() 
    {
        return note;
    }
    public void setState(Long state) 
    {
        this.state = state;
    }

    public Long getState() 
    {
        return state;
    }
    public void setPayAmount(BigDecimal payAmount) 
    {
        this.payAmount = payAmount;
    }

    public BigDecimal getPayAmount() 
    {
        return payAmount;
    }
    public void setReturnAmount(BigDecimal returnAmount) 
    {
        this.returnAmount = returnAmount;
    }

    public BigDecimal getReturnAmount() 
    {
        return returnAmount;
    }
    public void setStorageId(Long storageId) 
    {
        this.storageId = storageId;
    }

    public Long getStorageId() 
    {
        return storageId;
    }
    public void setAccountId(Long accountId) 
    {
        this.accountId = accountId;
    }

    public Long getAccountId() 
    {
        return accountId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("supplierName", getSupplierName())
            .append("receiptNumber", getReceiptNumber())
            .append("goodsInfo", getGoodsInfo())
            .append("billDate", getBillDate())
            .append("adminName", getAdminName())
            .append("totalAmount", getTotalAmount())
            .append("note", getNote())
            .append("state", getState())
            .append("payAmount", getPayAmount())
            .append("returnAmount", getReturnAmount())
            .append("storageId", getStorageId())
            .append("accountId", getAccountId())
            .toString();
    }
}
